目标检测

您所在的位置:网站首页 mask rcnn iou 目标检测

目标检测

2023-04-10 17:12| 来源: 网络整理| 查看: 265

前言

yolo系列是目前应用范围比较广的目标的检测算法,经过几轮的改进,在实时性和检测效果上同比第一代yolo也有了较大提升,本文梳理一下yolo系列算法的改进思路。

YOLO 概述

在yolo之前,目标检测更多的是two-stage算法,即先筛选出部分候选框,在进行选择与分类,其中比较有代表性的网络为:faster-RCNN,mask-RCNN等。 you only look once,yolo系列是众多one-stage算法中比较有代表性的,one- stage使用单一网络完成定位与分类。

yolo框架思路

目标检测任务是定位出图像中的物体并说明物体是什么,yolo系列将其转化为回归问题,输入为图片,输出为x,y,w,h,c + 各分类概率

我们从v1 loss 入手看看它的设计思路: image.png

loss分为三个大部分: 位置损失、置信度损失、分类损失 位置损失比较容易理解,就是边框x,y,w,h; w,h 取平方根用来平衡大小框对损失影响大小的问题。 置信度指的是候选框内为物体还是背景的置信度,这里的C取值为0和1,图像中背景区域一般来讲远多于物体,lamda用来平衡该差异对整体损失的影响。 第三部分为分类损失。 后面的YOLO都基本按照这个思路进行优化。

YOLOV1

YOLO V1是YOLO的开山之作,它奠定了YOLO系列的基本框架。

基本思想

将图片划分为S*S个格子,每个格子2个预选框,若该格子中心包含物体,则该物体由该格子进行预测。 预测产生 S*S*(B*5+C) yolov1中S=7,B=2,C为数据集类别数量。

网络结构 20200722170142957.png

网络结构相对简单, gooleNet作为卷积网络,两层全联接网络进行映射。

基本过程

输入:448*448图像 网络预测边框分类及其置信度 NMS去处冗余框

不足之处

1.网络由于使用全连接网络,输入大小不可变。 2.预选框只有两个,对于密集重合以及小目标效果不佳。

YOLOV2

V2在V1的基础上通过一些较有创造性的trick,进一步提升效果与速率。

V2优化内容 去除全连接层,采用卷积与池化来进行预测,该网络结构的改进可以使用多尺度进行训练。 去除了全连接层也不再使用dropout来防止过拟合,使用Batch Normalization来替代。 优化损失函数,对位置的损失函数改用偏移量,更易收敛。 特征融合,除了使用最后一层特征图外,融合倒数第二层特征,改善V1对小目标效果较差的问题。 预选框使用K-means聚类得到,同比V1提前指定预选框,该方式更贴近数据集,更合理。 更大分辨率,有效提升MAP。 引入联合训练方式,即检测与分类联合训练,训练分类时,检测部分的loss不生效,为0。 网络结构 yolov2.png 基本过程与细节

输入416*416 卷积网络 输出13*13*5*25

细节一:输入大小为32的奇数倍,保证最后框的大小为奇数,方便确定框的中心。 细节二: K-means聚类聚类距离为,1-IOU;规避大小框中心点距离差别大的问题。 细节三:优化loss函数,使用相对偏移量计算损失,计算的是预测框与预选框的偏移(anchor box),只有最接近ground truth的检测框进行损失的计算。V5每个格子5个预选框,同比V1召回明显增加,准确率下降,map略有下降。

image.png YOLOV3

YOLOV3是极有标志性的一代,借鉴了ResNet的残差思想,大幅度提升了时效性与效果。

插曲佚事:V3是原YOLO作者的最后一代YOLO模型,因作者发现V3被用于军事,从此退出了相关研究。

网络结构 YOLOV3.jpeg 过程与细节

输入图像 卷积神经网络 多尺度预测

多尺度预测, 52*52 用于预测小目标 26*26 用于预测中目标 13*13 用于预测大目标 低层融合高层特征,提高中小目标的预测能力和预测效果 高层采用上采样,与中小两层进行拼接融合预测

取消池化层,使用卷积控制步长来进行下采样。 改进loss,使得yolo可以进行多标签预测。

image.png


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3